<?php
//======================================================================================
//
// Function: REEFTintegrationLog - Get customers
//
// Programmer: JKJ
// Date : 2025-05-27
//
// Copyright Reeft A/S (c) - 2025
//======================================================================================
// datatables parameters:
// https://datatables.net/manual/server-side
//======================================================================================
// General config
//======================================================================================
include "config/config.php";
//======================================================================================
// Set language
//======================================================================================
include "include/set_language.php";
//======================================================================================
// Get input
//======================================================================================
if (isset($_REQUEST["customer"])) {
$customer = $_REQUEST["customer"];
} else {
$customer = '';
}
if (isset($_REQUEST["group_search"])) {
$group_search = $_REQUEST["group_search"];
} else {
$group_search = '';
}
if (isset($_REQUEST["group_search"])) {
$group_search = $_REQUEST["group_search"];
} else {
$group_search = '';
}
if (isset($_REQUEST["active_search"])) {
$active_search = $_REQUEST["active_search"];
} else {
$active_search = '';
}
//===============================================================
// Pagination fields "local"/datatables
//===============================================================
if (isset($_REQUEST["rpyOffSet"])) {
$rpyOffSet = $_REQUEST["rpyOffSet"];
} else {
$rpyOffSet = 0;
}
if (isset($_REQUEST["rpyPageSize"])) {
$rpyPageSize = $_REQUEST["rpyPageSize"];
} else {
$rpyPageSize = 0;
}
if (isset($_REQUEST["rpyPageGoTo"])) {
$rpyPageGoTo = $_REQUEST["rpyPageGoTo"];
} else {
$rpyPageGoTo = 0;
}
//===============================================================
// Datatables input, will overrule "orgainal" fields if found
//===============================================================
if (isset($_REQUEST["start"])) {
$dataTablesOffset = $_REQUEST["start"];
} else {
$dataTablesOffset = 0;
}
if (isset($_REQUEST["length"])) {
$dataTablesPageLength = $_REQUEST["length"];
} else {
$dataTablesPageLength = 0;
}
if (isset($_REQUEST["search"]["value"])) {
$search_arg = $_REQUEST["search"]["value"];
} else {
$search_arg = '';
}
if (isset($_REQUEST['draw'])) {
$draw = $_REQUEST['draw'];
} else {
$draw = 1;
}
if (isset($_REQUEST["order"][0])) {
$rpyOrderColumn = '';
foreach ($_REQUEST["order"] as $key => &$tmpArr) {
// print_r($tmpArr);
$order_column_index = $tmpArr["column"];
$order_column_dir = $tmpArr["dir"];
if ($key == 0) $rpyOrderColumn = $_REQUEST["columns"][$order_column_index]["data"] . "|" . strtoupper($order_column_dir);
else $rpyOrderColumn .= "," . $_REQUEST["columns"][$order_column_index]["data"] . "|" . strtoupper($order_column_dir);
}
} else {
$rpyOrderColumn = '';
}
//$dataLine = urlencode($dataLine);
$search_arg = str_replace(' ', "|", $search_arg);
//======================================================================================
// Get input
//======================================================================================
if ( $dataTablesPageLength > 0 ) {
$rpyPageSize = $dataTablesPageLength;
}
if ( $dataTablesOffset > 0 ) {
$rpyOffSet = $dataTablesOffset;
}
//======================================================================================
// Get session variables
//======================================================================================
include "include/getsession.php";
//======================================================================================
// Set language
//======================================================================================
include "include/set_language.php";
//======================================================================================
// Connect to SQLite database in file
//======================================================================================
$entries_found = 0;
$returnCode = '99';
$returnMsg = 'No data found';
$currentDate = date('Y-m-d');
$currentTime = date('H:i:s');
//======================================================================================
// Set header
//======================================================================================
header('Content-Type: application/json;charset=utf-8');
//======================================================================================
// Get time stamp
//======================================================================================
$timeStamp = '';
if ( $timeStamp == '' ) {
$now = DateTime::createFromFormat('U.u', number_format(microtime(true), 6, '.', ''));
$timeStamp = $now->format("Y-m-d H:i:s");
}
$data = array(
"timestamp" => $timeStamp,
"rpyPageGoTo" => $rpyPageGoTo,
"rpyOffSet" => $rpyOffSet,
"rpyPageSize" => $rpyPageSize,
"rpyOrderColumn" => $rpyOrderColumn,
"search_arg" => $search_arg,
"customer" => $customer,
"group_search" => $group_search,
"active_search" => $active_search,
"draw" => $draw
);
//======================================================================================
// Make call to API somewhere
//======================================================================================
$jsonData = json_encode($data);
//header('Content-Type: application/json');
$json_pretty = json_encode(json_decode($jsonData), JSON_PRETTY_PRINT);
// echo $json_pretty;
// echo "<br>";
// echo $url;
$headers = array(
"Content-type: Content-Type:application/json",
"User-Agent: REEFTintegrationLog 1.0",
"APIKEY: $DFT_API_KEY"
);
$parms = '?'
. 'rpyPageGoTo=' . $rpyPageGoTo
. '&rpyOffSet=' . $rpyOffSet
. '&rpyPageSize=' . $rpyPageSize
. '&rpySearchArg=' . $search_arg
. '&rpyOrderColumn='. $rpyOrderColumn
. '&search_arg=' . $search_arg
. '&customer=' . $customer
. '&group_search=' . $group_search
. '&active_search=' . $active_search
. '&draw=' . $draw
;
// Set URL
$url = $DFT_WEBSERVICE_URL . '/' . 'customer_maintain_data.php';
// Add parms
$url = $url . $parms;
// echo $url;
// exit;
// Create a new cURL resource
$ch = curl_init($url);
// Attach encoded JSON string to the POST fields
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonData);
// Set the content type to application/json
//curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers );
// Return response instead of outputting
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, false);
//curl_setopt( $ch, CURLOPT_CUSTOMREQUEST, 'POST' );
curl_setopt($ch, CURLOPT_HEADER, false); // we do not need headers
curl_setopt($ch, CURLOPT_NOBODY, false); // we don't need body
// Execute the GET request
$result = curl_exec($ch);
$ary = curl_getinfo($ch);
// Close cURL resource
curl_close($ch);
// Write jSon back to requester
echo $result;
?>